package com.yunxi.dao.sto;

import com.github.pagehelper.PageInfo;
import com.yunxi.core.dao.BaseMapperPlus;
import com.yunxi.model.sto.VehicleOffline;
import com.yunxi.otd.pojo.VehicleCanChangePlanVO;
import com.yunxi.sto.pojo.VehicleOfflineShareReqVO;
import com.yunxi.sto.pojo.VehicleOfflineShareRespVO;
import com.yunxi.sto.pojo.VehicleOfflineVO;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 车辆下线数据 Mapper 接口
 * </p>
 *
 * @author caoYong
 * @since 2019-05-21
 */
public interface VehicleOfflineMapper extends BaseMapperPlus<VehicleOffline> {

    void updateCarTraceInfo(Map<String, Object> map);

    VehicleOffline selectCarByPlanNo(String planNo);

    VehicleOffline selectCarByVin(String vin);

    List<VehicleCanChangePlanVO> selectCanChangePlan(Map<String, Object> map);

    VehicleOfflineVO getDetailById(String id);

    void updateByVin(VehicleOfflineVO voo);

    int deleteVehicleCarByPlanNo(String planNo);

    List<String> getVinList(VehicleOfflineVO vehicleOfflineVO);

    /**
     * 通过VIN码查询15位物料编码
     * @param vin
     * @return
     */
    String getMatnrCodeByVin(String vin);

    List<VehicleOfflineShareRespVO> queryShareVehicle(VehicleOfflineShareReqVO vo);

    void putVehicle(Map map);

    VehicleOffline getByVin(String vin);

    VehicleOfflineVO getVoByVin(String vin);
}
